Die meisten relationalen Datenbanksysteme kennen zwei
Datenzugriffsarten.
Der relationale Zugriff verarbeitet Teilmengen ganzer Tabellen und nicht
nur eine einzelne Tabellenzeile. Er heisst
deshalb auch mengenorientiert. Der satzorientierte
Zugriff verlangt
hingegen, dass sich der Entwickler von Satz zu Satz bewegt. Es heisst deshalb
bewegungs- oder satzorientiert.
SQL und QBE arbeiten mengenorientiert. Ein einzelner Ausdruck erlaubt die
Vereinbarung einer komplexen Vorschrift zur Manipulation ganzer Tabellen. Man nennt SQL und QBE
deshalb auch deklarative Abfragesprachen. Weil Entwickler und Endbenutzer mit SQL
und QBE nicht nur Abfrageergebnisse komfortabel spezifizieren können, sondern die Abfragen auch effizient verarbeitet werden, sind mengenorientierte
Verfahren die erste Wahl.
Für Datenzugriffe, die sich nur umständlich oder gar nicht in SQL und QBE formulieren lassen, bietet MS Access
Visual
Basic für Applikationen (VBA) an. Im Gegensatz zu SQL
und QBE erlaubt VBA die bewegungsorientierte Verarbeitung von Tabellen. Dabei
schreitet es in
Steuerstrukturen wie
Do While, Do Until und If
von Satz zu Satz. Für den bewegungsorientierten Zugriff mit VBA bietet MS Access zwei Objektmodelle
an:
DAO (Data Access Objects)
ADO (ActiveX Data Objects).
ADO ist eine allgemeine Schnittstelle zu mehreren Datenbanksystemen und webbasierten Anwendungen. Während ADO auch externe Datenbanksysteme wie SQL Server und Oracle unterstützt, unterstützt DAO direkt nur die Datenbankmaschine von MS Access (die sogenannte Jet Database Engine). Langfristig soll ADO deshalb die ältere Schnittstelle DAO ablösen. Weil DAO aber noch effizienter mit der Jet Database Engine arbeitet und die Sicherheit von Jet-Datenbanken noch besser unterstützt als ADO, verwenden wir in TESTS das Objektmodell von DAO.